#ifndef MY_THREAD_CLASS_H
#define MY_THREAD_CLASS_H

#include <iostream>
#include <pthread.h>

using namespace std;

class My_Thread_Class {
	public:
		My_Thread_Class ();
		virtual ~My_Thread_Class ();

		bool start_thread ();
		bool wait_for_thread ();

	protected:
		virtual void thread_method () = 0;

	private:
		pthread_t thread;

		static void * internal_entry_point (void *);

};

#endif
